package com.workcell.workdata.xthings.service;

import com.github.pagehelper.PageInfo;
import com.workcell.workdata.common.core.util.R;
import com.workcell.workdata.xthings.dto.*;

/**
 * @Author 廖博文
 * @Date 2023/2/7 16:53
 * @Description
 */
public interface IotMonitorReportService {

	/**
	 * 硬件占比
	 * @return
	 */
	R getHardwarePercent();

	/**
	 * 获取每日设备新增数
	 * @return
	 */
	R getNewHardwareData();

	/**
	 * 设备数据
	 * @return
	 */
	R getHardwareData();

	/**
	 * 在线/不在线数分析
	 * @return
	 */
	R hardwareDataAnalysis();

	/**
	 * 通过设备类型查询设备数据
	 * @param hardwareType
	 * @return
	 */
	R hardwareDataNew(String hardwareType);

	/**
	 * 通过设备类型查询设备数据 在线/不在线数
	 * @return
	 */
	R hardwareDataAnalysisNew(String hardwareType);

	/**
	 * 串口信息分页列表
	 *
	 * @param pageVO 分页参数
	 * @return 分页列表
	 */
	PageInfo<SerialDeviceMonitorDto> serialDeviceMonitorInfoPage(PageVo pageVO, DeviceMonitorQueryVo deviceMonitorQueryVo);

	PageInfo<SerialDeviceMonitorBindDto> serialDeviceMonitorBindPage(PageVo pageVO, DeviceMonitorBindQueryVo deviceMonitorQueryVo);

	CodeChainnumVo.SelectDeviceInfo getDeviceRunInfo(String deviceNo, String manufacturerCode, String hardwareType);
}
